package com.alibaba.datax.core;

import java.sql.*;

/**
 * DESC:连接Hive数据库 * * @author:wangshiheng * @date:2019/12/24
 */
public class JDBCUtil {
    static final String DriverName = "org.apache.hive.jdbc.HiveDriver";
    static final String url = "jdbc:hive2://39.99.128.250:10000/test";
    static final String user = "";
    static final String pass = "";

    /**
     * 创建连接     * @return     * @throws ClassNotFoundException     * @throws SQLException
     */
    public static Connection getConn() throws ClassNotFoundException, SQLException {
        Class.forName(DriverName);
        Connection connection = DriverManager.getConnection(url, user, pass);
        return connection;
    }

    /**
     * 创建命令     * @param connection     * @return     * @throws SQLException
     */
    public static Statement getStmt(Connection connection) throws SQLException {
        return connection.createStatement();
    }

    /**
     * 关闭连接     * @param connection     * @param statement     * @throws SQLException
     */
    public void closeFunc(Connection connection, Statement statement) throws SQLException {
        statement.close();
        connection.close();
    }

    public static void main(String[] args) throws SQLException, ClassNotFoundException {
        Connection conn = JDBCUtil.getConn();
        Statement stmt = JDBCUtil.getStmt(conn);
        //执行sql语句
        String sql = "select * from default.kylin_sales";
        ResultSet set = stmt.executeQuery(sql);//返回执行的结果集
        ResultSetMetaData meta = set.getMetaData();//获取字段
        while (set.next()) {
            for (int i = 1; i <= meta.getColumnCount(); i++) {
                System.out.print(set.getString(i) + " ");
            }
            System.out.println();
        }
        System.out.println("sql");
    }
}